package 第六周.homework;
//创造一个30个客户的数组，编写用于管理这些账户，随时可以更新账户信息并可以存取款，当遇到无效交易时，生成适当的
//错误信息。

import java.text.NumberFormat;
import java.util.Arrays;

public class pp8_6_1 {
    private pp8_6[] collection;
    int a;

    //创建一个容量为30的数组来放置用户信息。
    public pp8_6_1() {
        collection = new pp8_6[30];
        a = 0;
    }

    //创建账户的具体信息。
    public void setAccount(String owner, long account, double initial) {
        collection[a] = new pp8_6(owner, account, initial);
        a++;
    }

    //加3%的利息的方法。
    public void addmoney() {
        int b = 0;
        for (b = 0; b < collection.length; b++)

        {
            if (collection[b] != null)
                collection[b].addInterest();
        }
    }

    //存钱的方法。
    public double savemoney(String name, double money) {
        double result = 0;
        for (int a = 0; a < collection.length; a++) {
            if (collection[a] != null) {
                if (collection[a].getName().equals(name)) {
                    collection[a].deposit(money);
                    result = collection[a].getBalance();
                }
            }
        }
        return result;
    }

    //取钱的方法。
    public double withdraw(String name) {
        double result1 = 0;
        for (int i = 0; i < collection.length; i++) {
            if (collection[i] != null)
                if (collection[i].getName().equals(name)) {
                    collection[i].getBalance();
                    result1 = collection[i].getBalance();
                }
        }
        return result1;
    }

    //判断交易是否有效，若无效，返回错误提醒。
    public boolean ifvalidtrade(String name, double money) {
        boolean result2 = false;
        for (int m = 0; m < collection.length; m++) {
            if (collection[m] != null)
                if (collection[m].getName().equals(name)) {
                    if (collection[m].getBalance() >= money) {
                        collection[m].withdraw(money, money * 0.01);
                        result2 = true;
                    }
                }
        }
        return result2;
    }

    @Override
    public String toString() {
        return "pp8_6_1{" +
                "collection=" + (collection == null ? null : Arrays.asList(collection)) +
                '}';
    }
}
//    public String toString(){
//        if(collection[x] != null)
//
//    }
//     return collection[a];
